1
Integrità dei dati tramite immutabilità: Tuple standard
AI015Lesson 3
00:00

Le tuple in Julia sono raccolte ordinate di lunghezza fissa progettate per garantire l'integrità dei dati impedendo modifiche accidentali allo stato. Un array è rappresentato da parentesi quadre mentre una tupla è rappresentata da parentesi tonde e virgole, come si vede nella definizione tup1=(5,10,15,20,25,30).

1. Proprietà fondamentali

Simile a un array, una tupla è anche un insieme ordinato di elementi. Ciò permette l'estrazione basata su intervalli, come tup1[3:end] per restituire un sottoinsieme dei dati originali. Le tuple sono inoltre molto flessibili, consentendo incastri strutturali. Se tup1 = ((1,2),(3,4)), possiamo recuperare il primo gruppo con tup1[1] oppure accedere al secondo livello tramite tup1[1][2].

2. Il contratto di immutabilità

La differenza più importante è che le tuple sono immutabili. Una volta istanziata, il loro contenuto non può essere modificato. Eseguendo un'operazione come tup1[2]=0 risulterà in un errore MethodError, effettivamente "bloccando" i dati.

Array [Mutabile][1, 2, 3]Tuple (Immutabile)(1, 2, 3)tup1[2]=0 → errore MethodError

3. Ottimizzazione

Poiché le tuple sono immutabili, il compilatore di Julia può spesso ottimizzare il loro stoccaggio in memoria, rendendole significativamente più veloci degli array per gruppi di dati piccoli e di dimensione fissa.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>